import { EntityModel } from '@midwayjs/orm';
import { BaseEntity } from 'midwayjs-cool-core';
import { Column, Index, PrimaryColumn, PrimaryGeneratedColumn } from 'typeorm';

/**
 * 0：顶级分类
 * 1～...：其他分类
 */
@EntityModel('mall_category')
@Index(['parent', 'name'], { unique: true }) // 父分类相同的同一级分类不能重名
export class MallCategoryEntity extends BaseEntity {
  @PrimaryGeneratedColumn()
  id: number;

  @PrimaryColumn()
  categoryId: number;

  @Column({ type: 'enum', enum: [1, 2, 3], comment: '分类级别：1/2/3' })
  level: number;

  @Column({ comment: '父分类：0 表示顶级分类', default: 0 })
  parent: number;

  @Column({ comment: '分类名' })
  name: string;
}
